//
//  HYYMainViewController.swift
//  Hyy9Weibo
//
//  Created by Air on 16/3/22.
//  Copyright © 2016年 hyy. All rights reserved.
//

import UIKit

class HYYMainViewController: UITabBarController {

    override func viewDidLoad() {
        super.viewDidLoad()

        //创建所有控制器
        addChildViewControllers()
        
        //自定义tabBar,添加加号按钮,系统的tabBar时只读的，不能用＝号直接赋值，使用KVC来赋值
//        tabBar = HYYMainTabBar()
        self.setValue(HYYMainTabBar(), forKey: "tabBar")
        //外观颜色，tabbar默认渲染就是这个颜色
//        tabBar.tintColor = UIColor.blackColor()
        
    }
    
    //创建所有控制器
    func addChildViewControllers() {
        //设置tabar控制器的子控制器
        //首页
        let homeVC = HYYHomeViewController()
        addChildViewController(homeVC, title: "首页", imageName: "tabbar_home")
        
        //消息
        let messageVC = HYYMessageViewController()
        addChildViewController(messageVC, title: "消息", imageName: "tabbar_message_center")
        
        //发现
        let discoverVC = HYYDiscoverViewController()
        addChildViewController(discoverVC, title: "发现", imageName: "tabbar_discover")
        
        //我
        let profileVC = HYYProfileViewController()
        addChildViewController(profileVC, title: "我", imageName: "tabbar_profile")
    }
    
    /**
     添加tabbar为子控制器
     
     - parameter controller: 控制器
     - parameter title:      标题
     - parameter imageName:  图片名字
     */
    func addChildViewController(controller: UIViewController, title: String ,imageName: String) {
        controller.title = title
        controller.tabBarItem.image = UIImage(named: imageName)
        //拼接图片名称
        let hightedImageName = imageName + "_highlighted"
        
        //设置高亮图片 默认情况下都会被渲染成蓝色
        controller.tabBarItem.selectedImage = UIImage(named: hightedImageName)?.imageWithRenderingMode(UIImageRenderingMode.AlwaysOriginal)
        //设置item文字颜色
        controller.tabBarItem.setTitleTextAttributes([NSForegroundColorAttributeName : UIColor.orangeColor()], forState: UIControlState.Selected)
        
        addChildViewController(UINavigationController(rootViewController: controller))
    }

}
